#include	<stdio.h>

#include	<sys/types.h>

#include	<dirent.h>


void do_ls(char []);


int main(int argc, char *argv[])

{
	
if ( argc == 1 )
		
do_ls( "." );
	
else
		
while ( --argc )
{
			
printf("%s:\n", *++argv );
			
do_ls( *argv );
		
}

	
return 0;

}


void do_ls( char dirname[] )

{
	
DIR		*dir_ptr;		
	
struct dirent	*direntp;		

	
if ( ( dir_ptr = opendir( dirname ) ) == NULL )
		
fprintf(stderr,"ls1: cannot open %s\n", dirname);
	
else
	
{
		
while ( ( direntp = readdir( dir_ptr ) ) != NULL )
			
printf("%s\n", direntp->d_name );
		
closedir(dir_ptr);
	
}

}
